// 1-15 实例-15 求一个数的阶乘
/**
 * 一个正整数的阶乘（英语：factorial）是所有小于及等于该数的正整数的积，并且0的阶乘为1。自然数n的阶乘写作n!。
 */
#include <iostream>
int factorial(int n);
int main(void)
{
  int n;
  std::cout << "请输入一个数:";
  std::cin >> n;
  std::cout << n << "!: " << factorial(n) << std::endl;
  printf("---------------end-----------------\n");
  return 0;
}

int factorial(int n)
{
  if (n == 1 || n == 0)
  {
    return 1;
  }
  else
  {
    return n * factorial(n - 1);
  }
}